package com.bh.shipment.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.bh.common.annotation.Excel;
import com.bh.common.core.domain.BhtmsBaseEntityNoCode;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 新车辆到站对象 jc_vehicle_arrive
 *
 * @author slx
 * @date 2024-03-09
 */
@TableName("jc_vehicle_arrive")
@ApiModel(value = "新车辆到站对象", description = "新车辆到站对象")
@EqualsAndHashCode(callSuper = true)
@Data
public class JcVehicleArrive extends BhtmsBaseEntityNoCode
{

    /** 发运时间 */
    @ApiModelProperty("发运时间")
    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "发运时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date operateTime;

    /** 到站时间 */
    @ApiModelProperty("到站时间")
    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "到站时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date vehicleTime;

    /** 当前站 */
    @ApiModelProperty("当前站")
    @Excel(name = "当前站")
    private String whichStation;

    /** 当前站ID */
    @ApiModelProperty("当前站ID")
    @Excel(name = "当前站ID")
    private Long nowOrganizationId;

    /** 组织机构 */
    @ApiModelProperty("组织机构")
    @Excel(name = "组织机构")
    private Long jcOrganizationId;

    /** 运单ID */
    @ApiModelProperty("运单ID")
    @Excel(name = "运单ID")
    private Long jcShipmentId;

    /** 运抵时间 */
    @ApiModelProperty("运抵时间")
    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date arriveTime;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("createName", getCreateName())
                .append("createTime", getCreateTime())
                .append("description", getDescription())
                .append("modifyName", getModifyName())
                .append("modifyTime", getModifyTime())
                .append("name", getName())
                .append("status", getStatus())
                .append("operateTime", getOperateTime())
                .append("vehicleTime", getVehicleTime())
                .append("whichStation", getWhichStation())
                .append("nowOrganizationId", getNowOrganizationId())
                .append("jcOrganizationId", getJcOrganizationId())
                .append("jcShipmentId", getJcShipmentId())
                .append("arriveTime", getArriveTime())
                .toString();
    }
}